package com.hgl.bi.web.controller;

import com.hgl.bi.common.constant.ErrorCode;
import com.hgl.bi.common.model.vo.R;
import com.hgl.bi.common.utils.AssertUtil;
import com.hgl.bi.web.model.vo.StatsVo;
import com.hgl.bi.web.service.StatsService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * @program: BI
 * @description: 数据统计控制器
 * @author: hgl
 * @create: 2025-03-01 15:28
 */
@Tag(name = "数据统计模块")
@RestController
public class StatsController {

    @Autowired
    private StatsService statsService;


    /**
     * 获取统计信息
     * @return 统计信息
     */
    @Operation(summary = "获取统计信息", tags = "数据统计模块")
    @GetMapping("/stats/list")
    public R<List<StatsVo>> getStats(@RequestParam String range) {
        // 非空校验
        AssertUtil.notNull(range, ErrorCode.REQUEST_PARAM_ERROR);
        List<StatsVo> list = statsService.getStats(range);
        return R.success(list);
    }

}
